import { defineStore } from "pinia";
import { ref } from "vue";
import { getLoginUser } from '@/api/userController.ts'

/**
 * 存储登录用户的状态
 */
export const useLoginUserStore = defineStore("loginUser", () => {
  //定义用户初始状态
  const loginUser = ref<any>({
    userName: "未登录",
  });
  // 通过接口返回用户状态
  async function fetchLoginUser() {
    // todo 由于后端还没提供接口，暂时注释
    const res = await getLoginUser();
    if (res.data.code === 0 && res.data.data) {
      loginUser.value = res.data.data;
    }
    // 测试用户登录，3 秒后登录
    // setTimeout(() => {
    //   loginUser.value = { userName: '测试用户', id: 1 }
    // }, 3000)
  }


  // 更新用户状态
  function setLoginUser(newLoginUser: any) {
    loginUser.value = newLoginUser;
  }

  //返回
  return { loginUser, setLoginUser, fetchLoginUser };
});
